]> dgit.raspbian.org Git - gnome-shell.git/commitdiff
Make it possible to always show the a11y status
authorMatthias Clasen <mclasen@redhat.com>
Sun, 14 Apr 2013 13:35:56 +0000 (09:35 -0400)
committerMatthias Clasen <mclasen@redhat.com>
Mon, 15 Apr 2013 21:48:47 +0000 (17:48 -0400)
A switch for this is part of the redesign for the universal
access control-center panel.

https://bugzilla.gnome.org/show_bug.cgi?id=698001

data/org.gnome.shell.gschema.xml.in.in
js/ui/status/accessibility.js

index bacb6b1c8ca0ddbffd2080fd5faf176c58545088..e45274eb618ab0d4b034f63fea50ef119e7f1209 100644 (file)
@@ -73,6 +73,14 @@ value here is from the GsmPresenceStatus enumeration.</_summary>
         menuitem in single-user, single-session situations.
       </_description>
     </key>
+    <key name="always-show-universal-access" type="b">
+      <default>false</default>
+      <_summary>Always show the Universal Access status.</_summary>
+      <_description>
+        This key overrides the automatic hiding of the Universal
+        Access status icon when no accessibility features are enabled.
+      </_description>
+    </key>
     <key name="remember-mount-password" type="b">
       <default>false</default>
       <_summary>Whether to remember password for mounting encrypted or remote filesystems</_summary>
index 479a15a70b13637eaca30640bb46a5541e6670e9..b18af855b9487d6b27c0a710b7587f27a38ce6c0 100644 (file)
@@ -26,6 +26,8 @@ const KEY_ICON_THEME     = 'icon-theme';
 const KEY_WM_THEME       = 'theme';
 const KEY_TEXT_SCALING_FACTOR = 'text-scaling-factor';
 
+const KEY_ALWAYS_SHOW_UNIVERSAL_ACCESS = 'always-show-universal-access';
+
 const HIGH_CONTRAST_THEME = 'HighContrast';
 
 const ATIndicator = new Lang.Class({
@@ -71,12 +73,18 @@ const ATIndicator = new Lang.Class({
         this.menu.addMenuItem(new PopupMenu.PopupSeparatorMenuItem());
         this.menu.addSettingsAction(_("Universal Access Settings"), 'gnome-universal-access-panel.desktop');
 
+        global.settings.connect('changed::' + KEY_ALWAYS_SHOW_UNIVERSAL_ACCESS, Lang.bind (this, this._queueSyncMenuVisibility));
+
         this._syncMenuVisibility();
     },
 
     _syncMenuVisibility: function() {
         this._syncMenuVisibilityIdle = 0;
 
+        if (global.settings.get_boolean(KEY_ALWAYS_SHOW_UNIVERSAL_ACCESS)) {
+            this.actor.visible = true;
+            return false;
+        }
         let items = this.menu._getMenuItems();
 
         this.actor.visible = items.some(function(f) { return !!f.state; });